1. Field of the Invention
This application relates to the field of position controllers and more particularly to position controllers that track acceleration.
2. Description of Related Art
Position controllers employ a number of electromechanical systems to realize control of a device""s position. A typical controller will include sensors to detect the device""s current position, an input to receive data concerning the device""s desired position, and one or more outputs for control signals that direct the device to the desired location. The control signals are received by actuating elements such as servos, motors, gears, pneumatic pistons, and the like, which convert the control signals into physical motion by the device. The controller also includes a processor that can execute a control algorithm so that the device can be moved to the desired position in some predetermined fashion.
A control algorithm may be as simple as a binary signal that turns on when a detected position is smaller (or larger) than a desired position. More sophisticated controllers employ control algorithms tailored to the requirements of a particular application. Such requirements might include, for example, reaching maximum velocity as quickly as possible. The design of control algorithms draws heavily on control theory, and more specifically o of linear systems. One significant drawback of linear modeling is that it foregoes useful control algorithms that can employ nonlinear combinations of available data to achieve smoother, more rapid convergence on a desired position. Thus, some known control algorithms which aim to achieve rapid movement produce discontinuities in control signals that result in significant electronic noise, or result in oscillation or xe2x80x9cringingxe2x80x9d once a desired position is obtained. Further, in order to reduce computational overhead, some control algorithms only use the velocity and the position of a device when establishing levels for control signals.
There remains a need for a position controller that uses a nonlinear control algorithm for which acceleration, velocity, and position all converge continuously on zero. There also remains a need for a nonlinear position controller that tracks device acceleration.
The invention includes systems and methods for controlling a position of a device. According to the invention, a controller is realized using, as inputs, a device""s current acceleration, velocity, and position. The controller uses these inputs in nonlinear combination with a convergence constant to calculate an acceleration-tracking error that can be used to smoothly decelerate the device to a final resting position. The convergence constant is used to control the manner in which this deceleration takes place, e.g., linearly, asymptotically, or instantaneously. The nonlinear combination may be further adapted to limit the maximum slope of the deceleration in the phase plane, i.e., to ensure a maximum, finite bound for the acceleration-tracking error. Alternatively, the controller may switch to other control algorithms when the acceleration-tracking error exceeds a pre-defined limit.
In one aspect, the invention is a method for controlling a position of a device comprising: providing a device, the device having a motion defined by a position, a velocity, and an acceleration; providing a control signal, the position of the device being responsive to the control signal; and varying the control signal, as the device approaches a desired location, according to a nonlinear function of the position, the velocity, and the acceleration wherein the velocity and the acceleration converge on zero as the device approaches the desired position.
Varying the control signal may further comprise determining a convergence constant that defines the manner in which the acceleration converges to zero, and varying the control signal in proportion to the convergence constant. The convergence constant may have a value in a range from one-half to one. Varying the control signal may still further comprise: determining a tracking error, the tracking error calculated by multiplying the convergence constant by the velocity squared and dividing by the position, and subtracting therefrom the acceleration; and varying the control signal according to the tracking error. Varying the control signal may further comprise switching to a linear second-order model when a tracking error exceeds a predetermined limit. Or, varying the control signal may further comprise determining a maximum slope of the motion in a phase plane and limiting the control signal such that the maximum slope is not exceeded. Varying the control signal may still further comprise: determining a tracking error, the tracking error calculated by subtracting the acceleration from a first quantity divided by a second quantity, the first quantity equal to the convergence constant times the square of the velocity, and the second quantity equal to the position minus a third quantity, the third quantity equal to the velocity times a fourth quantity divided by the maximum slope, the fourth quantity equal to one minus the convergence constant; and varying the control signal according to the tracking error.
In one aspect, the device is a disk drive head. In another aspect, the desired position corresponds to an item of computer-readable data. In another aspect, the velocity is directly proportional to a current of the control signal. In another aspect, the position is directly proportional to a voltage of the control signal. In another aspect, the method further comprises periodically receiving a position signal from the device, and calculating the position, the velocity, and the acceleration from the received position signal.
In a different aspect, the invention is a system for controlling a position of a device, the system comprising: a device, the device having a motion defined by a position, a velocity, and an acceleration, the position being responsive to a control signal; and a controller, the controller providing the control signal to the device, the controller further varying the control signal, as the device approaches a desired location, according to a nonlinear function of the position, the velocity, and the acceleration wherein the velocity and the acceleration converge on zero as the device approaches the desired position.
The controller may vary the control signal according to a tracking error, the tracking error being proportional to a convergence constant. The convergence constant may haven a value in a range from one-half to one. In another aspect, the tracking error is calculated by multiplying the convergence constant by the velocity squared and dividing by the position, and subtracting therefrom the acceleration. In another aspect, the controller varies the controller varies the control signal according to a linear second-order model when the tracking error exceeds a predetermined limit. In another aspect, the controller limits the control signal such that a maximum slope of the motion in a phase plane is not exceeded. According to this aspect, the tracking error may calculated by subtracting the acceleration from a first quantity divided by a second quantity, the first quantity equal to the convergence constant times the square of the velocity, and the second quantity equal to the position minus a third quantity, the third quantity equal to the velocity times a fourth quantity divided by the maximum slope, the fourth quantity equal to one minus the convergence constant.
In the system, the device may be a disk drive head. The desired position may correspond to an item of computer-readable data. The velocity may be directly proportional to a current of the control signal. Or, the position may be directly proportional to a voltage of the control signal. The controller may periodically receives a position signal from the device, the controller calculating the position, the velocity, and the acceleration of the device from the received position signal.
In a different aspect, the invention is a position controller comprising: means for determining a position, a velocity, and an acceleration of a device; means for providing a control signal to the device, the control signal controlling the position of the device; and means for varying the control signal, as the device approaches a desired location, according to a nonlinear function of the position, the velocity, and the acceleration wherein the velocity and the acceleration converge on zero as the device approaches the desired position.
The position controller may further comprise means for calculating a tracking error, the tracking error calculated by multiplying a convergence constant by the velocity squared and dividing by the position, and subtracting therefrom the acceleration, and means for applying the tracking error to the control signal varying means. The position controller may further comprise means for calculating a tracking error such that a maximum slope in a phase plane is not exceeded, and means for applying the tracking error to the control signal varying means.